package sv.gob.mtps.sib.model;

// Generated 10-12-2012 10:54:32 AM by Hibernate Tools 3.4.0.CR1

import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * Pedido generated by hbm2java
 */
@Entity
@Table(name = "pedido", schema = "sib")
public class Pedido implements java.io.Serializable {

	private int idPedido;
	private EstadoPedido estadoPedido;
	private String compromisoPedido;
	private Date fechaPedido;
	private Date fechaRegistroPedido;
	private int idSeccionunidad;
	private String justificacionPedido;
	private String numeroPedido;
	private String ordencompraPedido;
	private Set<PedidoHasProducto> pedidoHasProductos = new HashSet<PedidoHasProducto>(
			0);

	public Pedido() {
	}

	public Pedido(int idPedido, Date fechaPedido, Date fechaRegistroPedido,
			int idSeccionunidad) {
		this.idPedido = idPedido;
		this.fechaPedido = fechaPedido;
		this.fechaRegistroPedido = fechaRegistroPedido;
		this.idSeccionunidad = idSeccionunidad;
	}

	public Pedido(int idPedido, EstadoPedido estadoPedido,
			String compromisoPedido, Date fechaPedido,
			Date fechaRegistroPedido, int idSeccionunidad,
			String justificacionPedido, String numeroPedido,
			String ordencompraPedido, Set<PedidoHasProducto> pedidoHasProductos) {
		this.idPedido = idPedido;
		this.estadoPedido = estadoPedido;
		this.compromisoPedido = compromisoPedido;
		this.fechaPedido = fechaPedido;
		this.fechaRegistroPedido = fechaRegistroPedido;
		this.idSeccionunidad = idSeccionunidad;
		this.justificacionPedido = justificacionPedido;
		this.numeroPedido = numeroPedido;
		this.ordencompraPedido = ordencompraPedido;
		this.pedidoHasProductos = pedidoHasProductos;
	}

	@Id
	@GeneratedValue(strategy=GenerationType.IDENTITY)
	@Column(name = "id_pedido", unique = true, nullable = false)
	public int getIdPedido() {
		return this.idPedido;
	}

	public void setIdPedido(int idPedido) {
		this.idPedido = idPedido;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "id_estadopedido")
	public EstadoPedido getEstadoPedido() {
		return this.estadoPedido;
	}

	public void setEstadoPedido(EstadoPedido estadoPedido) {
		this.estadoPedido = estadoPedido;
	}

	@Column(name = "compromiso_pedido", length = 50)
	public String getCompromisoPedido() {
		return this.compromisoPedido;
	}

	public void setCompromisoPedido(String compromisoPedido) {
		this.compromisoPedido = compromisoPedido;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "fecha_pedido", nullable = false, length = 13)
	public Date getFechaPedido() {
		return this.fechaPedido;
	}

	public void setFechaPedido(Date fechaPedido) {
		this.fechaPedido = fechaPedido;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "fecha_registro_pedido", nullable = false, length = 13)
	public Date getFechaRegistroPedido() {
		return this.fechaRegistroPedido;
	}

	public void setFechaRegistroPedido(Date fechaRegistroPedido) {
		this.fechaRegistroPedido = fechaRegistroPedido;
	}

	@Column(name = "id_seccionunidad", nullable = false)
	public int getIdSeccionunidad() {
		return this.idSeccionunidad;
	}

	public void setIdSeccionunidad(int idSeccionunidad) {
		this.idSeccionunidad = idSeccionunidad;
	}

	@Column(name = "justificacion_pedido", length = 100)
	public String getJustificacionPedido() {
		return this.justificacionPedido;
	}

	public void setJustificacionPedido(String justificacionPedido) {
		this.justificacionPedido = justificacionPedido;
	}

	@Column(name = "numero_pedido", length = 20)
	public String getNumeroPedido() {
		return this.numeroPedido;
	}

	public void setNumeroPedido(String numeroPedido) {
		this.numeroPedido = numeroPedido;
	}

	@Column(name = "ordencompra_pedido", length = 50)
	public String getOrdencompraPedido() {
		return this.ordencompraPedido;
	}

	public void setOrdencompraPedido(String ordencompraPedido) {
		this.ordencompraPedido = ordencompraPedido;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "pedido")
	public Set<PedidoHasProducto> getPedidoHasProductos() {
		return this.pedidoHasProductos;
	}

	public void setPedidoHasProductos(Set<PedidoHasProducto> pedidoHasProductos) {
		this.pedidoHasProductos = pedidoHasProductos;
	}

}
